home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48_2 / updir < prev    next >
Internet Message Format  |  1995-03-31  |  7KB

  1. Path: seq!spell
  2. From: Detlef Mueller <detlef@mwhh.hanse.de>
  3. Subject:  v01i033:  updir - UPDIR v1.1 (Bug fix), Part01/01
  4. Newsgroups: comp.sources.hp48
  5. Keywords: UPDIR UP tool bugfix
  6. Organization: M. Witt
  7. Followup-To: comp.sys.hp48
  8. Approved: spell@seq.uncwil.edu
  9.  
  10. Checksum: 1523641503 (verify with brik -cv)
  11. Submitted-by: Detlef Mueller <detlef@mwhh.hanse.de>
  12. Posting-number: Volume 1, Issue 33
  13. Archive-name: updir/part01
  14. Supersedes: updir: Volume 1, Issue 31
  15.  
  16.  
  17. BEGIN_RDME up.rdm
  18. Hi, all.
  19.  
  20. Forgive me,
  21.  
  22. the first version of the UP program I post, has a bug. I forget to handle
  23. the temporary menu. The sequence 'GetMenu% %IP>#' returns zero if the
  24. actual menu is the TMENU. In this case 'NTHCOMPDROP' didn't return any
  25. object. This can end up in a memory lost in further actions (this is the
  26. way I detect the bug, system RPL don't forgive any error :-). I hope,
  27. nobody has lost his memory by this way ...
  28. Also the binary download header in the source code was missing (I use a
  29. batch job to compile my programs and link them with a seperate header).
  30. I shouldn't post at 3:00 in the morning ...
  31. END_RDME
  32.  
  33. Here is the corrected article :
  34.  
  35. BEGIN_DOC up.doc
  36. In Mar 90 Jake G Schwartz (Jake-S@cup.portal.com) posted an UP function
  37. for built-in Menus.
  38.  
  39. > ... several of the built-in (ROM) menus in the machine are nested in a
  40. > tree structure as low as three levels deep.  The user manual on page 56
  41. > advises that one doesn't traverse these like a tree; one should simply
  42. > go to the new one.  In many cases, this requires more than a keystroke
  43. > or two.
  44.   ...
  45. > If UP is assigned to the UP keyboard key, its use becomes transparent
  46. > when the HP48 is in USER mode.  In the first weeks of calculator use, ROM
  47. > menu tree traversal is helpful in order to get a feel for where the
  48. > literally hundreds of functions reside in the machine.
  49.   ...
  50. > Rules:
  51. > -----
  52. >
  53. > If the current        The action of
  54. > menu is:              UP is:
  55. > -----------------------------------
  56. > Menu with no          LAST MENU
  57. > parent
  58. >
  59. > Menu with a           Moves to parent
  60. > parent                menu, page of
  61. >                       parent key
  62. >
  63. > RAM directory         UPDIR
  64. >
  65. > Custom Menu           LAST MENU
  66. >
  67.  
  68.   Library sub-menu    Library menu
  69.  
  70.   TMENU            LAST MENU
  71.  
  72. >
  73. > Jake Schwartz
  74.  
  75. I've convert UP into system-RPL and add support for library sub-menues.
  76.  
  77. If you only want to use UP, download UP.ASC into your HP48, execute ASC\->
  78. and store the result into a variable in the HOME directory.
  79.  
  80. To generate UP, put the listings of UP.S and UP.M in the appropriate files,
  81. then invoke the following commandlines at the MS-DOS (urgh) prompt:
  82.  
  83.     rplcomp up.s up.a
  84.     sasm -e -N up.a
  85.     sload -H up.m
  86.  
  87. BTW, could anyone EMAIL me routines to support fast bitblit ? I'll need
  88. them in my PACMAN version (no time to write my own set :-).
  89. Thanks.
  90.  
  91. Tschuess (German slang of 'bye' =-),
  92.     Detlef 8-)
  93.  
  94. P.S.
  95. I wrote a working RPL decompiler library, 26kb in size. It was a hard
  96. job (I think about a RPL compiler .. :), so maybe I'll release it as
  97. shareware. Any comments ?
  98.     Detlef
  99.  
  100. END_DOC
  101.  
  102. BEGIN_SRC up.s
  103. *****************************************************************************
  104. * Modulname:    Up
  105. * Modultype:    Secondary
  106. * Dest.Comp.:    HP48
  107. * Language:    System RPL
  108. * Author:    Detlef Mueller,Nibelungenweg 6,2000 Hamburg 56,W-Germany
  109. * Interface:    UP    ( --> )
  110. * Description:    Derivat for build-in command UPDIR.
  111. * Edition History :
  112. *    0.000    08-11-1991    DM    Alpha version
  113. *    1.000    09-04-1991    DM    release
  114. *      001    09-05-1991    DM    fix TMENU bug, bin. download header
  115. *****************************************************************************
  116.  
  117.     TITLE    Up
  118.  
  119. *****************************************************************************
  120. *        OBJECT
  121. *****************************************************************************
  122.  
  123. ASSEMBLE
  124. =%18    EQU    #1CDF2        Not 'supported' (Why ??? It is the object
  125. *                followed by %19)
  126.     NIBASC    /HPHP48-E/    Binary download header
  127. RPL
  128.  
  129. ::
  130.     CK0NOLASTWD
  131.     GetMenu% %IP>#            ( *Get menu nr, convert IP to #* )
  132.     TWO
  133.     #=casedrop
  134.     UPDIR                ( *In VAR menu, do simple UPDIR* )
  135.     DUP SIXTY
  136.     #<ITE
  137.     ::    {   %0      %0      %0      %3      %3
  138.         %3      %3      %3      %3      %0
  139.        %10     %10     %10     %10     %10
  140.        %10      %0      %0     %18      %0
  141.         %0      %0      %0      %0     %24
  142.        %24     %24      %0      %0    % 29
  143.         %0    % 31    % 32      %0      %0
  144.       % 35    % 35    % 37    % 35      %0
  145.       % 40.04   %0    % 42    % 42    % 42
  146.       % 42    % 42    % 42    % 42.02 % 42.02
  147.       % 40.02 % 40.02 % 42.02 % 42.02 % 42.03
  148.       % 42.03 % 42.03 % 42.03 % 42.0
  149.     }
  150.     SWAP NTHELCOMP            ( *determine menu parent* )
  151.     NOTcase                ( *Not in list, must be TMENU* )
  152.         %0                ( *so do LASTMENU* )
  153.     ;
  154.     ::  DROP %24            ( *From a library submenu do LIBRARY* )
  155.     ;
  156.     InitMenu%
  157. ;
  158. END_SRC
  159.  
  160. BEGIN_SRC up.m
  161. SUpress XRef
  162. OUtput up
  163. LLu up.lr
  164. SEarch entries.o
  165. RElocate up.o
  166. END_SRC
  167.  
  168. BEGIN_ASC up.asc
  169. %%HP: T(3)A(R)F(.);
  170. "D9D2051A819C51411CE2300403D816F61A1881302BB46D9E36D9D2047A204B2A
  171. 24B2A24B2A23F2A23F2A23F2A23F2A23F2A23F2A24B2A27E0567E0567E0567E0
  172. 567E0567E0564B2A24B2A22FDC14B2A24B2A24B2A24B2A24B2A210DC110DC110
  173. DC14B2A24B2A23392010000000000009204B2A23392010000000000001303392
  174. 010000000000002304B2A24B2A23392010000000000005303392010000000000
  175. 005303392010000000000007303392010000000000005304B2A2339201000000
  176. 0000400404B2A233920100000000000024033920100000000000024033920100
  177. 0000000000240339201000000000000240339201000000000000240339201000
  178. 0000000002403392010000000000202403392010000000000202403392010000
  179. 0000002004033920100000000002004033920100000000002024033920100000
  180. 0000020240339201000000000030240339201000000000030240339201000000
  181. 000030240339201000000000030240339201000000000000240B2130322306B6
  182. 50DA9164B2A2B2130D9D204423010DC1B213097614B2130DD48"
  183. END_ASC
  184.  
  185. BYTES: #84DDh 414
  186.  
  187. BEGIN_UU up.uu
  188. begin 644 up.bin
  189. M2%!(4#0X+46=+5"A&,D5%,$N`T`PC6%OH8$8`[)+UNECG2U`IP*THD(K*K2BV
  190. M,B\J\Z(R+RKSHC(O*O.B0BLJYU!V#F7G4'8.9>=0=@YEM*)"*RKRS4$K*K2B8
  191. M0BLJM*)"*RH!S1'0'`'-02LJM*(RDP(!``````"0`K2B,I,"`0``````$`,SR
  192. M*1`````````R0"LJM*(RDP(!``````!0`S,I$````````#4PDP(!``````!P5
  193. M`S,I$````````#5`*RHS*1````````1`0"LJ,RD0````````0C"3`@$`````-
  194. M`"`$,RD0````````0C"3`@$``````"`$,RD0````````0C"3`@$``````"`$.
  195. M,RD0```````"0C"3`@$`````("`$,RD0```````"0#"3`@$`````(``$,RD0L
  196. M```````"0C"3`@$`````("`$,RD0```````#0C"3`@$`````,"`$,RD0````A
  197. M```#0C"3`@$`````,"`$,RD0````````0K`2`R,R8&L%K1E&*RHK,=#9`D0R@
  198. +$-`<*S&09T$K,0`K#
  199. ``
  200. end
  201. END_UU
  202. -- 
  203. +-----------------------------------+---------------------------------------+
  204. |      `What a depressingly         |             Detlef Mueller            |
  205. |         stupid machine`           |          detlef@mwhh.hanse.de         |
  206. |  Marvin in THGTTG, part II, p.48  |...!uunet!mcsun!unido!mcshh!mwhh!detlef|
  207. +-----------------------------------+---------------------------------------+
  208.  
  209.